iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 20
0

Quorum的概念,一樣是分散式系統廣泛使用的概念。

wiki上面已經說明了,最小讀寫票數(quorum)算法,是為了在資料有一個以上的副本(冗餘)時,保證資料的最終一致性做法。

原則上公式如下,V是幾分拷貝數,Vr是讀取的拷貝數,Vw是寫入的拷貝數。
Vr + Vw > V
Vw > V/2

在RDBMS裡面,因為系統是強一致性,所以讀寫問題考慮上不用擔心那麼多。

RDBMS如果是只有一台機器,那麼同時做讀寫操作時,系統一定會幫忙分先後,讀比較快,或者寫比較快。

RDBMS若做主從架構,讀寫就分離了,讀寫操作並不會互相影響。

而分散式資料庫並沒有這麼簡單,每個節點基本上同時提供讀/寫功能,但對同一筆資料的操作,又可能連線的入口是透過不同的節點進來。

物理上不同的機器,最多校時到的等級,若單純想要用時間來比較讀和寫的操作,誰先進到系統那是不可能的。

分散式資料庫比的是將資料讀或寫,完成的復本數,也就是上面講的Quorum,處理同時對某筆資料同時有讀寫的狀況。

實際上 Quorum 其實只是 Consistency Level 設定的一種,下一篇我們更進一步來了解有哪些Consistency Level以及相關的讀寫操作方式。

RF = 3 的寫入

RF = 3 的讀取



上一篇
Day19. 環境結構(Ring Architecture)
下一篇
Day21. Consistency Level 與讀寫機制
系列文
scylla 從零開始攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言